<?php
require_once '../ORM/ORMMarca.php';
require_once '../beans/marca.php';
require_once '../ORM/ORMTransac.php';
require_once '../session.php';

if(!empty($_POST)) {
    switch($_POST['accion']) {
        case 'agregarMarca':
            $nombre = $_POST['nombre'];
            agregarMarca($nombre);
            break;
        case 'getMarcasCombo':
            getMarcasCombo();
            break;
        case 'getMarcaComboPorCodigo':
            $codigo = filter_input(INPUT_POST, 'codigo', FILTER_SANITIZE_STRING);
            getMarcasComboPorCodigo($codigo);
            break;
        case 'existeMarcaPorCodigo':
            $codigo = filter_input(INPUT_POST, 'codigo', FILTER_SANITIZE_STRING);
            existeMarcaPorCodigo($codigo);
            break;
        case 'getMarcas':
            getMarcas();
            break;
        case 'editarLabelMarca':
            $idMarca = filter_input(INPUT_POST, 'idMarca', FILTER_SANITIZE_NUMBER_INT);
            editarLabelMarca($idMarca);
            break;
        case 'guardarMarca':
            $idMarca = filter_input(INPUT_POST, 'idMarca', FILTER_SANITIZE_NUMBER_INT);
            $nombre = filter_input(INPUT_POST, 'nombre', FILTER_SANITIZE_STRING);
            guardarMarca($idMarca, $nombre);
            break;
        case 'eliminarMarca':
            $idMarca = filter_input(INPUT_POST, 'idMarca', FILTER_SANITIZE_NUMBER_INT);
            eliminarMarca($idMarca);
            break;
    }
}

function agregarMarca($nombre) {
    $nombre = filter_var($nombre, FILTER_SANITIZE_STRING);
    if(strlen($nombre) > 0) {
        if(ORMExisteMarca($nombre)) {
            echo "<i title=\"La Marca ya existe\" class=\"icon-warning-sign\"></i>";
        } else {
            ORMAgregarMarca($nombre);
            if(ORMExisteMarca($nombre)) {
                echo "<i title=\"La Marca fue agregada con &eacute;xito\" class=\"icon-ok\"></i>";
                ?>
<script type="text/javascript">
    $(document).ready(function() {
        getMarcas();
    });
</script>
<?php
            } else {
                echo "<i title=\"La Marca no se pudo agregar\" class=\"icon-warning-sign\"></i>";
            }
        }
    } else {
        echo "<i title=\"Debe escribir un nombre para la Marca\" class=\"icon-warning-sign\"></i>";
    }
}


function getMarcasCombo() {
    $marcas = ORMGetMarcas();
    
    echo "<select id=\"marcasCombo\">\n";
    foreach ($marcas as $key => $value) {
        echo "<option value=\"".$key."\">".$value."</option>\n";
    }
    echo "</select>\n";
}

function getMarcasComboPorCodigo($codigo) {
    
    $marcas = ORMGetMarcasPorCodigo($codigo);
    
    if(count($marcas)) {
        echo "<select id=\"marcasCombo\">\n";
        foreach ($marcas as $key => $value) {
            echo "<option value=\"".$key."\">".$value."</option>\n";
        }
        echo "</select>\n";
    }
    
}

function getMarcas() {
    $marcas = ORMGetMarcas();
    
    $flag = false;
    echo "<table class='table table-striped table-bordered'>\n";
    foreach ($marcas as $key => $value) {
        if($flag) {
            echo "<tr>\n";
            $flag = false;
        } else {
            echo "<tr class=\"alternate-row\">\n";
            $flag = true;
        }
        echo "<td width=\"80%\"><div id=\"".$key."\"><label>".$value."</label></div></td>\n";
        echo "<td width=\"10%\"><a href=\"#\" id=\"".$key."\" onclick=\"editarLabelMarca(".$key.");\"> <i title=\"Editar\" class=\"icon-edit\"></i></a></td>";
        echo "<td width=\"10%\"><a href=\"#\" id=\"".$key."\" onclick=\"eliminarMarca(".$key.");\"> <i title=\"Eliminar\" class=\"icon-remove\"></i></a></td>\n";
        
        echo "</tr>";
    }
    echo "</table>\n";
}

function editarLabelMarca($idMarca) {
    echo "<input type=\"text\" id=\"label-".$idMarca."\" value=\"".ORMgetMarca($idMarca)."\" maxlength=\"45\" />\n";
    echo "<a href=\"#\" onclick=\"guardarMarca(".$idMarca.");\">";
    echo "<i title=\"Guardar\" class=\"icon-refresh\"></i>";
    echo "</a>\n";
}

function guardarMarca($idMarca, $nombre) {
    if(strlen($nombre) > 0) {
        ORMActualizarMarca($idMarca, $nombre);
    }
    echo "<label>".ORMgetMarca($idMarca)."</label>";
}

function eliminarMarca($idMarca) {
    
    ORMDeleteMarca($idMarca);
}

function existeMarcaPorCodigo($codigo) {
    
}

function getMarcaPorId($idMarca) {
    $marca = new marca();
    $marca->setIdMarca($idMarca);
    $marca->setNombre(ORMGetCampoDeMarcaPorId('nombre', $idMarca));
    $marca->setHabilitado(ORMGetCampoDeMarcaPorId('habilitado', $idMarca));
    
    return $marca;
}
?>
